import request from '@/utils/request'

const fileApi = {
    minioUpload: '/file/upload',
    getUrl: '/file/getUrl',
    getFile: '/file/get',
    minioUploadImgs: '/file/minioUploadImgs',
    minioUploadMore: '/file/uploadMore',
    minioRemove: '/file/remove'
}

/* 
    获取附件信息
*/
export function getFile (parameter) {
    // console.log('回显文件', parameter)
    return request({
        url: fileApi.getFile,
        method: 'post',
        params: parameter
    })
}


/**
 * 获取地址
 * @param {path:'http://192.168.2.118:9000/power/2020-08-25/202008250150270b643a1fefd54845b4cd5e6ec9ea47f3.jpg'} parameter
 */
export function getUrl (parameter) {
    // console.log('parameter', parameter)
    return request({
        url: fileApi.getUrl,
        method: 'post',
        params: parameter
    })
}
/**
 * 上传文件
 * @param {file:'文件',bucket:'文件夹',path:'路径'} parameter
 */
export function minioUpload (data) {
    var body = new FormData()
    body.append("file", data);
    
    return request({
        url: fileApi.minioUpload,
        headers: {"Conten-Type": "mulitpart/form-data"},
        method: 'post',
        data: body
    });
}
/**
 * 上传多个文件
 * @param {files:'文件',bucket:'文件夹',path:'路径'} parameter
 */
 export function minioUploadMore (data) {
    var body = new FormData()
    if(data != undefined && data.length > 0) {
        data.forEach(item => { 
            body.append("files", item)
        })
        return request({
            url: fileApi.minioUploadMore,
            headers: {"Conten-Type": "mulitpart/form-data"},
            method: 'post',
            data: body
        });
    }
}
/**
 * 批量上传图片
    * @param {urls:['文件网络url']} parameter
 */
export function minioUploadImgs (body) {
    return request({
        url: fileApi.minioUploadImgs,
        method: 'post',
        data: body
    });
}


/**
 * 删除文件
 * @param {} parameter 
 * @returns 
 */
export function minioRemove (parameter) {
    // console.log('回显文件', parameter)
    return request({
        url: fileApi.minioRemove,
        method: 'post',
        params: parameter
    })
}
